-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update to Isabelle 2023 #670
Conversation
(Setting this to draft for now, because we should merge the other larger PRs first and then rebase this one) |
decdaae
to
2cbf067
Compare
This is now ready for review. The last commit needs to be dropped before merging (it just makes the tests pick Isabelle2023 instead of Isabelle2022 for the PR). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
My only comment is that a lot of the commits could be squashed together, since I don't think we get any benefit from the mapsto syntax updates being per directory.
That makes sense, the current set is mostly how they were constructed. I'll squash them into larger sets. |
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Rafal Kolanski <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, just a few minor nitpicks
(s\<lparr>kheap := kheap s(thread \<mapsto> | ||
TCB (tcb'\<lparr>tcb_arch := arch_tcb_context_set c' (tcb_arch tcb')\<rparr>))\<rparr>)" | ||
(s\<lparr>kheap := (kheap s) | ||
(thread \<mapsto> TCB (tcb'\<lparr>tcb_arch := arch_tcb_context_set c' (tcb_arch tcb')\<rparr>))\<rparr>)" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'd prefer the previous indentation
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
The code draws in table.ML from the Isabelle source, which changed in the 2023 release. This commit adds further library functions from Isabelle library.ML and extracts the parts of unsynchronized.ML that work with mlton. Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Signed-off-by: Gerwin Klein <[email protected]>
Updates all proofs and ML code to Isabelle2023.
Changes are fairly minor this time. A few tweaks in ML where functions get more parameters (location info and similar). Mostly these are filled with
None
or default values unless something is specifically available to put in.On the proof side, the only larger change is that the syntax precedence of the "mapsto" arrow has changed from
f t (x |-> y)
to(f t) (x |-> y)
, which is arguably clearer and easier to read in most cases.Haven't noticed any major performance impact, but we'll see more comparable numbers when the AWS tests come in.